package net.googlecode.demenkov.dao;

import net.googlecode.demenkov.domains.Group;

import java.util.List;

/**
 * DAO for actions with Group
 *
 * @author Demenkov Yura
 */
public interface GroupDAO extends GenericDAO<Group, Integer> {
    /**
     * Finds group by groupname,facultyname and universityname in database
     *
     * @param groupName
     * @param factultyName
     * @param universityName
     * @return group, if there is such group in database, or null, if not
     */
    public Group findGroupByGroupNameAndFacultyNameAndUniversityName(String groupName, String factultyName, String universityName);

    /**
     * Finds all groups by facultyname and universityname in database
     *
     * @param facultyName
     * @param universityName
     * @return list of groups
     */
    public List<Group> findAllGroupsByFacultyNameAndUniversityName(String facultyName, String universityName);
}
